package com.bocloud.cmp.driver.providers.intf;

import com.bocloud.cmp.model.HostOperateModel;
import com.bocloud.common.model.BsmResult;

/**
 * 宿主机操作服务接口
 * 
 * @author weiwei
 *
 */
public interface HostProvider {

	/**
	 * 创建宿主机
	 * 
	 * @param vendor
	 * @param region
	 * @param model
	 * @return
	 */
	public BsmResult create(String vendor, String region, HostOperateModel model);

	/**
	 * 删除宿主机
	 * 
	 * @param vendor
	 * @param region
	 * @param model
	 * @return
	 */
	public BsmResult remove(String vendor, String region, HostOperateModel model);

	/**
	 * 进入维护模式
	 * 
	 * @param vendor
	 * @param region
	 * @param model
	 * @return
	 */
	public BsmResult enterMode(String vendor, String region, HostOperateModel model);

	/**
	 * 退出维护模式
	 * 
	 * @param vendor
	 * @param region
	 * @param model
	 * @return
	 */
	public BsmResult exitMode(String vendor, String region, HostOperateModel model);

	/**
	 * 断开连接
	 * 
	 * @param vendor
	 * @param region
	 * @param model
	 * @return
	 */
	public BsmResult disconn(String vendor, String region, HostOperateModel model);

	/**
	 * 重连
	 * 
	 * @param vendor
	 * @param region
	 * @param model
	 * @return
	 */
	public BsmResult reconn(String vendor, String region, HostOperateModel model);

	/**
	 * 移动
	 * 
	 * @param vendor
	 * @param region
	 * @param model
	 * @return
	 */
	public BsmResult moveTo(String vendor, String region, HostOperateModel model);
}
